package com.student.dao;

import com.student.pojo.Student;

import java.util.List;

/**
 * @author lin945
 * @date 2020/4/25 13:06
 */
public interface StudentDao {
    /**
     * 判断student是否存在
     * @param student
     * @return 布尔
     */
    boolean existStudent(Student student);

    /**
     * 通过名字查找学生
     * @param name
     * @return List
     */
    List<Student> queryStudentByName(String name);

    List<Student> queryStudentByName(int startIndex, int pageSize, String name);
    /**
     * 保存学生
     * @param student
     * @return 布尔
     */
    boolean saveStudent(Student student);

    /**
     * 更新学生
     * @param student
     * @return 布尔
     */
    boolean updateStudent(Student student);

    /**
     * 删除学生
     * @param student
     * @return 布尔
     */
    boolean deleteStudent(Student student);

    /**
     * 通过id查找学生
     * @param id
     * @return student
     */
    Student queryStudentById(String id);

    /**
     * 获取所以学生（慎用）
     * @return list
     */
    List<Student> querStudentList();

    /**
     * 分页查询
     * @param startIndex 起始位置下标
     * @param pageSize 查询数量
     * @return list
     */
    List<Student> querStudentlimtList(int startIndex,int pageSize);

    /**
     * 学生数量
     * @return long
     */
    long getStudentCount();
}
